/*
    Geocache: some utilities for managing and visualizing geocache information
    Copyright (C) 2008  Gary Jackson

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
/*
 * GpxMinusWpts.java
 */

package com.thegbomb.geocache;

import java.io.File;
import java.io.FileFilter;
import java.util.regex.Pattern;

/**
 *
 * @author Gary Jackson
 */
public class GpxMinusWpts implements FileFilter {
    private static final Pattern gpx = Pattern.compile(".*\\.gpx", Pattern.CASE_INSENSITIVE);
    private static final Pattern wpt = Pattern.compile(".*-wpts\\.gpx", Pattern.CASE_INSENSITIVE);
    
    public boolean accept(File pathname) {
        String name = pathname.getName();
        return gpx.matcher(name).matches() && !wpt.matcher(name).matches();
    }
    
    private static final GpxMinusWpts instance = new GpxMinusWpts();
    
    private GpxMinusWpts() { /* Nothing */ }
    
    public static final GpxMinusWpts getInstance() {
        return instance;
    }
}
